Parse error: parse error, expecting `','' or `';'' in /web/www/frac/users/...

Tags:    php

<< < 12 > >>
jeg har lige lavet en php file hvor jeg har denne php-code
if($_GET['side']==1)
{
echo"";
}
if($_GET['side']==2)
{
echo"";
}
jeg har sat en masse html koder ind i det første echo men når jeg tjekker den på serverne skrive den "Parse error: parse error, expecting `','' or `';'' in /web/www/frac/users/gamecord/indhold.php on line 19" jeg kan ikke havd hele html coderne på en linje er der ikke en måde jeg kan dele det over på flere forskellige linje det hjælper ikke med \\n

HJÆLP MIG NU ASAP DEN DER KOMMER MED DET BEDSTE FØR ALLE UP'ERNE

Noob i php og mysql
men ok til css og html



11 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Hejsa,

Er ikke helt sikker på jeg forstår dit problem, men du kunne prøve følgende:

if($_GET['side']==1)
{
echo <<<EOD
<html>
<head></head>
<body class="minklasse">
<p class="minandenklasse">Far's dyt er bedst</p>
</body>
</html>
EOD;
}
if($_GET['side']==2)
{
echo "";
}

Venlig hilsen
Jon Krondal Honum



Opret et nyt spørgsmål - du kan ikke blive ved med at "putte" nye ind :)

Men:
Mht. EOD, så er det et måde at udskrive meget tekst på: http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

Mht. det andet, så er der masser af spørgsmål om det her på sitet.

mikl-dk | mikl@mikl.dk



\\n = linieskift i html-kode
= linieskift i html-visning

Er du sikker på, at du har escapet " i html-en?

Vil give fejl:
echo "<tr bgcolor="#CCCCCC">";

Vil ikke give fejl:
echo "<tr bgcolor=\\"#CCCCCC\\">";

" i koden skal altså være \\"

mikl-dk | mikl@mikl.dk



Hejsa,

Er ikke helt sikker på jeg forstår dit problem, men du kunne prøve følgende:

if($_GET['side']==1)
{
echo <<<EOD
<html>
<head></head>
<body class="minklasse">
<p class="minandenklasse">Far's dyt er bedst</p>
</body>
</html>
EOD;
}
if($_GET['side']==2)
{
echo "";
}

Venlig hilsen
Jon Krondal Honum

ok det virkede men et spørgelsmål til
hvad betyder <<<EOD
eller EOD.

og et til hvis jeg vil have det så dan at hvis man ikke skriver et pageid (det der hedder side i dette eksemple) skriver den at man skal skrive et pageid hvordan går jeg så det

Noob i php og mysql
men ok til css og html



Ligesom quote (' ') og double quote (" "), så er dette også en måde at håndtere strings, kaldet heredoc. Syntax er "<<<" og så en identifier, i dette tilfælde EOD, hvilken man så igen bruger på en ny linje til sidst, når tekststrengen skal afsluttes. EOD er altså bare en identifier, som lige så godt kunne være noget helt andet.

Heredoc fungerer på samme måde som double quote, altså variabler og lignende bliver oversat til indholdet af disse, og ikke blot betragtet som noget tekst. Forskellen er, at du kan skifte linje og bruge quotes og double quotes uden at behøve escape disse med backslash (\\).

Mener du noget i denne stil:
if(!isset($_GET['side']))
{
echo "Du skal skrive et pageid!";
}

Hilsen Jon



Sorry mikl-dk,

Så ikke din reprimande får efter jeg også havde skrevet :)

Hilsen Jon



Mikkel: Hvorfor får Jon UPs? Jeg svarede på det du spurgte om? Jon svarede på et "tillægsspørgsmål" - som jeg også havde svaret på, endda før ham?

mikl-dk | mikl@mikl.dk



Mikkel: Hvorfor får Jon UPs? Jeg svarede på det du spurgte om? Jon svarede på et "tillægsspørgsmål" - som jeg også havde svaret på, endda før ham?

mikl-dk | mikl@mikl.dk


Hmmm...I al retfærdighed, så kom jeg også med en løsning på hans problem, og det var den han valgte at bruge....altså anvendelse af heredoc i stedet for, at skulle escape alle double quotes i hans html kode, som du foreslog.

Han bad om den bedste løsning, og vi gav hvert vores løsningsforslag, hvor jeg så var heldig, at mit passede bedst til hans behov.....at hænge mig ud for, at få pointene for "kun at svare på et tillægsspørgsmål" er vist ikke fair! -jeg gav et løsningsforslag præcis som dig selv...

Hilsen Jon



Jeg undskylder - jeg har i al hast overset dit første svar :$

mikl-dk | mikl@mikl.dk



Alt i orden...synes heller ikke det lignede din stil :D

Hilsen Jon



<< < 12 > >>
t